From 1e3aceb1421148ae742283337286bb7a128e8ecc Mon Sep 17 00:00:00 2001 From: Jimi Xenidis Date: Thu, 14 Sep 2006 10:17:23 -0400 Subject: [PATCH] [POWERPC][XEN] Better explane the larx/stcx issue with interrupts Signed-off-by: Jimi Xenidis Signed-off-by: Hollis Blanchard --- xen/arch/powerpc/powerpc64/exceptions.S | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/xen/arch/powerpc/powerpc64/exceptions.S b/xen/arch/powerpc/powerpc64/exceptions.S index fd46ba4fc1..78ab31fb29 100644 --- a/xen/arch/powerpc/powerpc64/exceptions.S +++ b/xen/arch/powerpc/powerpc64/exceptions.S @@ -118,7 +118,11 @@ LOAD_GPRS "(\from+1)", \to, \uregs mfspr r0, SPRN_HSPRG1 std r0, UREGS_r13(r1) /* save R13 from HSPRG1 */ - /* Blow away any reservation according to 970 errata after saving CR */ + /* Only _one_ larx is allowed at a time. Any future use will be + * rejected until the earlier one (if any) completes. Since we + * may have interrupted a larx in the Domain, or Xen we need to + * clear any larx that may currently exist. We could probably + * skip which for hcalls */ ldx r0, 0, r1 stdcx. r0, 0, r1 -- 2.30.2